package com.hjm.project.formalPos.posTransferRecord.mapper;

import java.util.List;
import java.util.Map;

import com.hjm.project.formalPos.posTransferRecord.domain.PosTransferRecord;

/**
 * 划拨记录Mapper接口
 * 
 * @author LOVE
 * @date 2020-11-27
 */
public interface PosTransferRecordMapper 
{
    /**
     * 查询划拨记录
     * 
     * @param id 划拨记录ID
     * @return 划拨记录
     */
    public PosTransferRecord selectPosTransferRecordById(Long id);

    /**
     * 查询划拨记录列表
     * 
     * @param posTransferRecord 划拨记录
     * @return 划拨记录集合
     */
    public List<PosTransferRecord> selectPosTransferRecordList(PosTransferRecord posTransferRecord);

    /**
     * 新增划拨记录
     * 
     * @param posTransferRecord 划拨记录
     * @return 结果
     */
    public int insertPosTransferRecord(PosTransferRecord posTransferRecord);

    /**
     * 修改划拨记录
     * 
     * @param posTransferRecord 划拨记录
     * @return 结果
     */
    public int updatePosTransferRecord(PosTransferRecord posTransferRecord);

    /**
     * 删除划拨记录
     * 
     * @param id 划拨记录ID
     * @return 结果
     */
    public int deletePosTransferRecordById(Long id);

    /**
     * 批量删除划拨记录
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deletePosTransferRecordByIds(String[] ids);

    /**
     * 处理商户费率政策
     *
     * @param currentMerno
     * @return
     */
    public  List<Map<String,Object>> getMerchantRateInfo(String currentMerno);

    /**
     * 服务商费率政策
     *
     * @param targetAgent
     * @return
     */
    public  List<Map<String,Object>> getAgentRateInfo(Long targetAgent);

    public int updateMerchantInfoAgentNum(Map<String,Object> params);

    public int updateFormalPosAgentNum(Map<String,Object> params);

    public int updateBranchPosAgentNum(Map<String,Object> params);
}
